In an existing communication system, generally a Turbo code is used to code data service information whose code length is relatively large. As an error-correcting code, the Turbo code is often used with a cyclic redundancy check (Cyclic Redundancy Check, CRC) error-detecting code to perform cascaded coding. A receive end may learn, according to a CRC checking result, whether decoding with the error-correcting code is correct.
Specifically, at a transmit end, a media access control (Media Access Control, MAC) layer issues a transport block (Transport Block, TB) to a physical layer (PHY). Generally, the TB is relatively large and this does not facilitate coding at the physical layer. As shown in FIG. 1a and FIG. 1b, the physical layer first performs CRC coding for the TB to form transport block cyclic redundancy check (Transport Block Cyclic Redundancy Check, TB-CRC), appends the TB-CRC (the parts padded by crossing lines shown in FIG. 1a and FIG. 1b) to a data tail of the TB, splits the TB into multiple code blocks (CB, Code Block), and performs separate Turbo coding for each CB.
At the receive end, a physical layer decodes received data, checks the TB-CRC, and learns whether the decoding of the TB is correct according to a checking result; and a radio resource management (Radio Resource Management, RRM) layer needs to learn a packet error ratio (packet Error Ratio, PER) or a short-time (such as tens of milliseconds) block error rate (Block Error Ratio, BLER) of the decoding performed by the physical layer, so as to estimate short-time channel quality, adjust a power control policy, or do the like.
In the prior art, there are the following two methods for the physical layer at the transmit end to process the CBs split from the TB: As shown in FIG. 1a, the physical layer may directly perform Turbo coding for the CBs after the splitting; or as shown in FIG. 1b, the physical layer may perform CRC coding for each CB after the splitting to form code block cyclic redundancy check (CB-CRC), appends the obtained CB-CRC (the parts padded by dots shown in FIG. 1b) to a data tail of each CB, and performs Turbo coding for each CB.
If the transmit end directly codes the CBs, the receive end can learn whether the decoding of the received data is correct only according to the TB-CRC check, and therefore the RRM layer can learn only a BLER of the transport block. However, in some applications, for example, the BLER needs to be output once every tens of milliseconds during power control but there are about tens of transport blocks within a duration as short as tens of milliseconds, and therefore, a small number of sampling points are available for estimating the BLER at the receive end, and the estimation is not precise.